home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Libraries / SAT 2.1.2 / HeartQuest sample ƒ / gameGlobals.p < prev    next >
Encoding:
Text File  |  1994-06-09  |  3.3 KB  |  157 lines  |  [TEXT/PJMM]

  1. {=================================================}
  2. {========= GameGlobals, globals for HeartQuest ============}
  3. {=================================================}
  4.  
  5. { Example file for Ingemars Sprite Animation Toolkit. }
  6. { © Ingemar Ragnemalm 1992 }
  7. { See doc files for legal terms for using this code. }
  8.  
  9. { This file defines the resource numbers and global variables for HeartQuest.}
  10.  
  11. unit GameGlobals;
  12.  
  13. interface
  14.  
  15.     uses
  16.         SAT;
  17.  
  18.     const
  19. {    Resource numbers}
  20.  
  21.         fileMenuRes = 1002;        { File menu }
  22.         editMenuRes = 1003;    { Edit menu }
  23.         gameMenuRes = 1004;    { Race menu }
  24.         highMenuRes = 1005;    { Highscores menu }
  25.         aboutAlrt = 1000;        { About box }
  26.         helpenemiesAlrt = 1001;{ Pictures of the enemies }
  27.         theHighRes = 263;        { highscore window }
  28.         highDlog = 259;            { highscore name dialog box }
  29.  
  30. { File menu }
  31.  
  32.         helpenemies = 1;
  33.         quit = 3;
  34.  
  35. { Edit menu }
  36.         em_undo = 1;
  37.         em_cut = 3;
  38.         em_copy = 4;
  39.         em_paste = 5;
  40.  
  41. { Game menu }
  42.         run = 1;
  43.         sound = 3;
  44.         macho = 5;
  45.         allowBG = 7;
  46.         fastAnimation = 8;
  47.         pause = 10;
  48.         abort = 11;
  49.  
  50. { highscore menu }
  51.         showhs = 1;
  52.         clearhs = 3;
  53.  
  54.  
  55. { Game area size: }
  56.  
  57.         xsize = 512 - 440; {Use offSizeH-xsize!}
  58. {ysize = 320; {Full height - use offSizeV instead}
  59.  
  60. { Preference file description - see further scores.p! }
  61.         kPrefsFileName = 'HeartQuest Prefs';
  62.         kPrefCreator = 'AHjD';
  63.         kPrefType = 'pref';
  64.  
  65.     type
  66. {    EventPtr = ^EventRecord;}
  67.  
  68.         str15 = string[15];
  69.  
  70.         featRec = record
  71.                 sound: boolean;
  72.                 allowBG: boolean;
  73.                 plotFast: boolean;
  74.                 macho: boolean;
  75.                 player: str15;
  76.             end;
  77.         featPtr = ^featRec;
  78.         featHnd = ^featPtr;
  79.  
  80. {Indexes for strings}
  81.     const
  82.         aboutStrID = 1;
  83.         anonymousStrID = 2;
  84.         cantfindsysStrID = 3;
  85.         resmissingStrID = 4;
  86.         creatingprefStrID = 5;
  87.         cantcreateresStrID = 6;
  88.         cantopenprefStrID = 7;
  89.         cantcreateprefStrID = 8;
  90.         normalStrID = 9;
  91.         machoStrID = 10;
  92.         scoreStrID = 11;
  93.         bonusStrID = 12;
  94.         levelStrID = 13;
  95.         sureStrID = 14;
  96.         nobodyStrID = 15;
  97.         startgameStrID = 16;
  98.         startlevelStrID = 17;
  99.         pauseStrID = 18;
  100.         resumeStrID = 19;
  101.         nopictStrID = 20;
  102.         noclutStrID = 21;
  103.         nooffscreenStrID = 22;
  104.         pleaseuncheckStrID = 23;
  105.         endStrID = 24;
  106.         okStrID = 25;
  107.         yesStrID = 26;
  108.         noStrID = 27;
  109.         quitStrID = 28;
  110.         memerrStrID = 29;
  111.         noscreenStrID = 30;
  112.         satnopictStrID = 31;
  113.         nowindStrID = 32;
  114.  
  115.     var
  116.         theHigh: WindowPtr; { Window ptrs. }
  117.  
  118. {    Menu handles.  There isn't any apple menu here, since TransSkel will}
  119. {    be told to handle it itself.}
  120.  
  121.         features: featHnd;        { Settings record. }
  122.  
  123.         fileMenu, editMenu, GameMenu, highMenu: MenuHandle;
  124.  
  125. {      Dummy Boolean.  This may be used for Memory Management, if desired }
  126.         dummy: Boolean;
  127.  
  128.         slask: OSerr;
  129.  
  130.         level: longint;
  131.         bonus: longint;
  132.  
  133.         playerPos: point; { Position of player, to make it possible for monsters to aim }
  134.  
  135.         pauseFlag: boolean;
  136.  
  137.         lastMacho: Boolean; {features^^.macho förra game over}
  138.         lastHigh: Integer; {Platsen för förra highscore}
  139.  
  140.     function MyGetIndString (index: integer): Str255;
  141.  
  142. implementation
  143.  
  144. {I know, it's ugly to have a routine in the globals file, but this is needed just}
  145. {about everywhere, so the alternative was to make a new unit.}
  146.  
  147. {MyGetIndString returns a string that it gets from STR# 128 (hard-coded)}
  148. {by GetIndString.}
  149.     function MyGetIndString (index: integer): Str255;
  150.         var
  151.             str: Str255;
  152.     begin
  153.         GetIndString(str, 128, index);
  154.         MyGetIndString := str;
  155.     end;
  156.  
  157. end.